ADCAIJ: Advances in Distributed Computing and Artificial Intelligence Journal
Regular Issue, Vol. 10 N. 4 (2021), 435-452
eISSN: 2255-2863
DOI: https://doi.org/10.14201/ADCAIJ2021104435452

EpilNet: A Novel Approach to IoT based Epileptic Seizure Prediction and Diagnosis System using Artificial Intelligence

Shivam Guptaa*, Virender Rangab and Priyansh Agrawalb

a Department of Computer Science and Engineering, Indian Institute of Information Technology, Sonepat, Haryana, India (Mentor National Institute of Technology, Kurukshetra, Haryana, India)

b Department of Computer Engineering, National Institute of Technology, Kurukshetra, Haryana, India.

*Correspondence Email: shivi98g@gmail.com

ABSTRACT

Epilepsy is one of the most occurring neurological diseases. The main characteristic of this disease is a frequent seizure, which is an electrical imbalance in the brain. It is generally accompanied by shaking of body parts and even leads (fainting). In the past few years, many treatments have come up. These mainly involve the use of anti-seizure drugs for controlling seizures. But in 70% of cases, these drugs are not effective, and surgery is the only solution when the condition worsens. So patients need to take care of themselves while having a seizure and be safe. Wearable electroencephalogram (EEG) devices have come up with the development in medical science and technology. These devices help in the analysis of brain electrical activities. EEG helps in locating the affected cortical region. The most important is that it can predict any seizure in advance on-site. This has resulted in a sudden increase in demand for effective and efficient seizure prediction and diagnosis systems. A novel approach to epileptic seizure prediction and diagnosis system "EpilNet" is proposed in the present paper. It is a one-dimensional (1D) convolution neural network. EpilNet gives the testing accuracy of 79.13% for five classes, leading to a significant increase of about 6-7% compared to related works. The developed Web API helps in bringing EpilNet into practical use. Thus, it is an integrated system for both patients and doctors. The system will help patients prevent injury or accidents and increase the efficiency of the treatment process by doctors in the hospitals.

KEYWORDS

Epilepsy; EEG; Machine Learning.

1. Introduction

Epilepsy is a long lasting neurological disease that affects 70 million globally. It is not a newly discovered disease traced back to 4000 BC. The disease is not spread by direct contact with affected person. The main causes involve loss of oxygen to brain, or severe head injury, brain stroke and even can be due to genetic heredity. Epilepsy is mainly characterized by frequent seizures (Kolb et al., 2014). Seizure involves electrical imbalance in brain. These imbalances are accompanied with random shaking or involuntary movements of body parts (Sujatha 2019). In past few decades with advancements in technology and medical science treatments are available for seizure control. Most of these involve use of anti-seizure drugs. But in 80% of cases, these drugs are not effective in controlling frequency of seizures. Presently Electroencephalogram (EEG) is widely used for monitoring brain activities. EEG are mainly of two types. One of them is wearable EEG that can be placed on the human scalp as shown in Figure 1. Other EEG is implanted in skull (Usman et al., 2020). Wave signals from EEG electrodes helps in the diagnosis of Epilepsy. They are also useful for predicting on-site time for a seizure. This all has created a sudden increase in demand for seizure prediction systems. These systems will help patient by generating alarms before the seizure. This will prevent any kind of injury or accident due to uncertain seizures. Strong and long-lasting seizures can even sometime lead to blackout (fainting). Such systems will also help pregnant ladies to stabilize themselves before seizure. This will help in reducing miscarriages due to sudden falling down or hitting sharp objects nearby. Most of epilepsy cases are reported in childhood (Menshawy et al., 2015). Small children with the development of such systems will get assistance. It will help them save themselves while physical activities like playing games, swimming etc. So in all there is a rising need and urge for some epilepsy seizure prediction and diagnosis system.

Figure 1: Wearable EEG device on head scalp

Recently in February 2020, (Liu et al., 2020) proposed 2D convolution neural network (CNN) that gave an accuracy of 64.5% for five classes. In January 2020, (Mao et al., 2020) came up with a combined CNN model with continuous wavelet transformation for five class classifications of epileptic signal that gave an accuracy of 72.49%. (Abbasi et al., 2019) proposed a long short term memory (LSTM) based recurrent neural network (RNN) classifier that classified pre-ictal, ictal with an accuracy of 94%. (Cruz et al., 2018) came up with a prototype embedded in gloves and proposed a standalone application that used motion to detect seizure and send short messaging service (SMS) alert. (Ranganathan et al., 2015) proposed a seizure diary in which patient has to record the seizure details manually. (Marzuki et al., 2016) proposed ‘MyEpiPal’ in which patients can manually add many details related to Epilepsy. The application is using the inbuilt mobile accelerometer to detect motion during a seizure.

Work has also been carried out in the development of wearable EEG devices. Sogamoso et al. in 2018 came up with a graphene-based electrode that can take EEG signals from the brain (Sogamoso and Parra 2018). The electrode is made up of carbon and is light in nature. It is wearable. (Ahmed et al., 2017) came up with a wrist and chest wearable EEG device. (Džaferović et al., 2016) and (Myers et al., 2016) proposed two different wearable EEG headsets that could send a signal to the android application using Bluetooth. (Pinho et al., 2017) proposed a wearable cap containing electrodes that can capture brain activities and send related EEG signals to IoT devices.

It is pertinent from the literature review that many recent works have developed wearable and handy devices. These can be connected to automated systems using the Internet of Things (IoT). Also, most of the work revolves around the involvement of patients by manually adding the seizure details. In the case of an existing alarm predicting system, there is a lot of scope for improvement in increasing reliability, efficiency, and usability. Also, the most critical area left out in present works is the development of an integrated automated system for patients and doctors that will help in the prediction, diagnosis, and analysis of seizures. Along with this, a lot of scope of improvement is there to develop better deep learning-based classifiers. Most of the work revolves around converting the true nature of raw textual EEG data into two dimensional (2D) form. This destroys true the originality of data. Therefore if the true nature of data is preserved, there is a scope of improvement in the efficiency of the model.

Keeping these points in mind, in this paper, a novel approach for an integrated IoT-based system is proposed. The system will be using a deep learning-based neural model architecture, ‘EpilNet’. EpilNet is one dimensional (1D) model that preserves the raw textual nature of EEG data. The EpilNet will use the proposed algorithm for values of hyperparameters and dropout ratios. An API has also been proposed to bring EpilNet into practical use for integrated systems. The Android-based system will help in predicting on-site time quickly by use of API. The approach will help keep patients safe and help doctors for timely treatment and efficient diagnosis at hospitals using a proposed web-based system.

2. Material and Method

The material and method used in the present study are discussed below.

2.1. Dataset

Epileptic Seizure Recognition Dataset (ESRD) contains samples of patients affected by Epilepsy. The dataset is prepared by Department of Epileptology, Bonn University. The dataset is free to use and is available on UCI Machine learning repository for research purposes (Andrzejak et al., 2001). The data is sampled and recorded at 173.61 Hz. The duration of each sample is around 23.6 seconds. These samples recorded are amplified using 128 channels. Samples are broadly divided into five main classes shown in Table 1. The dataset contains 11500 EEG samples. Each sample having a length of 178 and 1 label for class in numerical format with A-E as 1 to 5. The raw EEG signals plotted using matplotlib in python are shown in Figure 2. It helps in a better understanding of all classes.

Table 1: Description of dataset classes

Label

Class Name

Remarks

A

Healthy Open Eyes

The person not suffering from Epilepsy

B

Healthy Closed Eyes

The person not suffering from Epilepsy

C

Inter-Ictal

Signals of unhealthy person that are neither pre-ictal nor ictal

D

Pre-Ictal

Signals of unhealthy person before the seizure

E

Ictal

Signals of an unhealthy person during a seizure

Figure 2: Sample recording of EEG signal graph for (i) class A (ii) class B (iii) class C (iv) class D (v) class E. The class A and B corresponds to healthy samples, C and D are samples before on-site of the seizure which help in early on-site prediction. The last class E is samples from unhealthy person during seizure

2.2. Data Preprocessing

In the present study for the development of an integrated system, the dataset is divided and grouped together. The groups formed are significant for the prediction or diagnosis of Epilepsy. The grouped data will be used further for the training of EpilNet. The dataset contains mainly raw EEG signal values for five classes. The classes are namely A to E. For the development of a prediction system to find the on-site time of seizure. The data are grouped together as (AB), (D), (E). This is done because class A and class B both correspond to samples of a healthy person, D corresponds to the epileptogenic part of the brain, which helps in the early prediction of seizure, and the last group E is the reading of brain signals from the unhealthy person during a seizure. Class E is kept separated from D to help classify out the prediction at hospitals that the body of the arrived patient is shaking due to seizure or any other health concern (Abbasi et al., 2019). Thus the problem reduces to 3 class classifications. For diagnosis and analysis by doctors, all five classes are significant. These five classes are treated as separate groups. So the problem becomes a five-class classification for EpilNet.

2.3. EpilNet Model

EpilNet is mainly formed using basic blocks. The basic block comprises two 1D layers. These two layers are convolution 1D layer having filter of size 3 along with the padding of one. The output feature map from this layer undergoes batch normalization. Basic block has an additional skip connection to avoid vanishing gradient. Skip connection adds input feature map of the basic block to output map.

Now to form the complete architecture of EpilNet, the basic blocks are used. The raw textual EEG signal in the form of 1D vector is given as input to EpilNet. This input undergoes a convolution operation of one dimension. The operation has a filter size of 7 with a stride of 2. The padding value of 3 is applied to maintain output feature map dimensions. The output feature map undergoes activation and normalization. The activation function used is ReLU. So obtained, the feature map now passes through a chain of basic blocks. Each chain of basic block is repeated (3, 3, 4, 4) times. The output map obtained after passing from basic block undergoes an average pooling.

The EpilNet is then converted into fully connected network. At last of a fully connected network, the softmax function is applied to predict label for input signals. EpilNet makes a total of 32 layer model. The architecture of the EpilNet model is shown in Figure 3.

Figure 3: EpilNet model architecture

2.4. EpilNet algorithm

The algorithm will help in deciding values of hyper parameters like stride, filter size and dropout ratios in layers of EpilNet Architecture.

Algorithm I: procedure for basic block used in EpilNet

Input: Input vector V, Count of Neuron N.

Output: Feature map F is returned.

procedure BasicBlock(V, N)

1: for i=1 to 2:

2: Convolution operation is applied using filter size 3x1 and stride value 1

3: Batch Normalization is carried out on the obtained vector in the previous step to produce V'

4: Apply non linear activation function ReLU given by f(x) = max(0,x) where x ∈ V' with filter 1x1 …… and stride 1.

// To avoid the problem of vanishing gradient use step 5

5: Add input vector V to output obtained from steps 1 to 3 to obtain V″.

6: Apply ReLU f(x) = max(0,x) where x ∈ V″ to get F with filter size 1x1 and stride 1

7: return F // return the so obtained feature map F

end procedure

Algorithm II: procedure for EpilNet

Input: Signal Vector containing EEG values S, Count of classes C.

Output: Class prediction P.

procedure EpilNet(S, C)

1: Convolution operation is applied on S using filter size 7x1, stride value 2 and padding value of 3

2: Batch Normalization is carried out on the obtained vector in the previous step to produce S′

3: Apply non linear activation function ReLU given by g(x) = max(0,x) where x ∈ S′ with filter 1x1 …… and stride 1.

// To reduce computational complexity, overfitting and number of hyper-parameters of model use step 4

4: Apply max pooling operation of filter size 3x1 with stride of 2 and padding of 1 to give output M.

// Now on the obtained vector M will call BasicBlock procedure with appropriate neurons.

5: for i=1 to 3:

6: M = BasicBlock(M, 64)

7: for i=1 to 3:

8: M = BasicBlock(M, 128)

9: for i=1 to 4:

10: M = BasicBlock(M, 256)

11: for i=1 to 4:

12: M = BasicBlock(M, 512)

13: Apply the average pooling on the final M vector obtained with stride 1.

14: Convert the model network to a dense network with fully connected 512 neurons.

15: Reduce the count of neurons in fully connected network to classes count C to give vector P'.

16: Apply softmax function epi / ∑epi where pi ∈ P' to obtain probability of each class.

17: Predicted class P is the class with maximum probability.

18: return P // predicted class for signal vector S

end procedure

The EpilNet is coded in python with the help of pytorch module. About 70% of total data is used for training. The rest of 12% each is used for validation and testing purposes, respectively. In total EpilNet is trained on 20 epochs. One epoch is usually a complete traversal of training data. The best model so obtained is stored for future testing and prediction separate. This file contains learned hyperparameters.

2.5. Web API for Epilnet

A Representational State Transfer (REST) based cloud web API endpoint is developed for EpilNet. The endpoint is designed using flask module in python. The API helps in bringing EpilNet into practical use. The API endpoint takes in JSON (JavaScript Object Notation) feed as parameters in HTTP POST request. The data parameter contains EEG signal 1D vector collected from IoT device. The API is using ‘Gunicorn’ web server that serves each request concurrently. The web API endpoint is deployed on herokuapp for public use by developers around the globe. Herokuapp provides a balance of performance, flexibility, and configuration simplicity.

2.6. Mobile based prediction system using Epilnet

A mobile-based android application is developed. This will enable the prediction system to be anywhere, anytime. The application will take in EEG signals from IoT devices. It will help in predicting the on-site time of seizure. Whenever an on-site seizure time is predicted, then the application will generate an alarm to alert the patient. Along with the alarm, it will also fetch the location details of the patient. The location details will be sent to emergency contacts using SMS. This will assist caretakers in helping patients before any seizure, especially in small children and pregnant ladies. When an actual seizure takes place at that time, the application will send the location to emergency contacts. Along with that, the application will alert the hospital if seizure time exceeds five minutes. The system will also send details about the seizure to the doctor using an email. The information about seizures will be stored in a cloud database to assist easy and efficient diagnosis by doctors using the proposed web portal in the next section.

2.6.1 Architecture and flowcharts of application

The architecture of the application is shown in Figure 4. Basically, the dataset is used for training EpilNet. The trained model is then saved in an external file. The cloud API component helps in bringing EpilNet in to real-world use. The android service component takes in the input signal from IoT device and sends it to cloud API for testing using internet service. The input from IoT device can be taken through Wifi, Bluetooth technology or cable, it will mainly depend upon the EEG signal capturing device being used by the patient. Many recent handy and wearable devices have been discussed in section 1. For easy computability the application is designed in manner that it can directly feed itself on the raw textual data without requiring any pre-processing. Thus whenever using captured EEG signals, a pre-ictal is predicted as result, then the alarm service component is used to alert the patient. Also, the SMS service component is used to send SMS to emergency contacts about current location details. These location details are fetched using network-based components or GPS-based, whichever is available. Similarly, when an ictal is predicted, an email about details will be mailed to the doctor using the email service component. Along with that in ictal prediction, the SMS service component is also used.

Figure 4: Architecture of application

The flowcharts for working of components of mobile application, is shown in the Figure 5. The components shown in flowchart include starting a service, stopping a service and managing contacts. Managing contacts involve all aspects starting from adding new emergency contacts, view saved contacts and deleting any existing contact. The data or conditions required are shown in flowcharts for each component.

Figure 5: Flowchart for working of application (a) Starting Service (b)Stopping Service (c) Managing

2.6.2 Distinguish features of mobile application

The additional distinguish features that present mobile application has over the existing works, are listed below:

• Less resource utilization.

• Better battery optimization - As application sleeps down during inactive period and only wakes up when it needs to send input signal and take action accordingly.

• Requires less computational power – Application is active only for 1 minute out of 5 minutes slot, thus leaves computational power 4 minutes free for other applications.

• Easily switching between network-based location and GPS based location, for better availability of the location service.

• Protecting the service from being killed by CPU with use of foreground service instead of daemon services.

• Prediction service requires a minimal user interaction.

• Integrated alarming and prediction system for both patient and doctor.

• Better usability and operability.

2.7. Web portal for diagnosis

The web portal is developed that will assist the doctors at hospitals in making the treatment and analysis process efficient, faster, and reliable. The main feature of the portal is to reduce the time taken to predict Epilepsy using EEG graphs. The manual process is not only cumbersome but also requires deep knowledge and experience. EpilNet will help doctors take signals from EEG devices and easily predict whether the patient is healthy or unhealthy. EpilNet used for the portal is trained for all five classes.

Since EEG graphs used in the manual prediction are generally of low quality. The portal will also assist doctors in better studying EEG graphs. It will plot digital EEG graphs for input signals taken from EEG devices. These graphs could be scaled and zoomed up to milliseconds for studying minute details. This will help doctors in better analyzing the current status of the patient and choosing among available treatments wisely.

Only for registered patients portal will provide his/her history like frequency of seizure, time, etc. Doctors just have to input the patient's id, and all the details of past seizures will be displayed. These details are captured and stored using the mobile application described in earlier sections. This will help the doctor decide the appropriate dosage pattern for the patient. Along with that, it will help doctors examine whether the past medication is showing any improvements in the patient.

3. Experimental Results

In the present study, EpilNet is using 20 epochs for training purpose. The trained model is further used for the development of web API, mobile application for patients and web portal for doctors at hospitals. The code is publicly available1.The complete detailed analysis of observations and results acquired during the development are given below.

3.1. Epilnet Model Execution

Group 1: To classify between the healthy brain activities (A, B) from pre-ictal (D) and ictal (E).

The EpilNet model accuracy during training and testing sessions, is shown in Figure 6. The best model obtained during the training phase is saved in an external file. In group 1, the best fit model is obtained at the 12th epoch. The highest training accuracy so obtained is 95.18%. The testing accuracy for the best fit model obtained is 94.55%.

Figure 6: Training v/s. Testing accuracy for group 1

Confusion matrix generated while performing Testing session is shown in Figure 7.

Figure 7: Confusion matrix for group 1

Group 2: To identify between all the five classes

The EpilNet model accuracy during training and testing session is shown in the Figure 6. The best model obtained during the training phase is saved in an external file. In group 2 the best fit model is obtained at the 14th epoch. The highest training accuracy so obtained is 82.58%. The testing accuracy for the best fit model obtained is 79.13%, as shown in Figure 8.

Figure 8: Training vs. Testing accuracy for Group 2

The confusion matrix generated while performing the Testing session is shown in Figure 9.

Figure 9: Confusion matrix for group 2

3.2. Performance evaluation of web API

EpilNet deployed on herokuapp using ‘Gunicorn’ server. The server uses a worker that serves the incoming request. To better analyze the performance of web API load testing is carried out. Apache jmeter is used for load testing. A parallel load of 100 registered patients is used for testing. Testing is performed for all five classes. The load of 100 patient requests is maintained for 60 seconds with a startup time of 10 seconds. The graph for response time (in milliseconds) against timestamp is shown in Figure 10.

Figure 10: Response time graph for web API

The summary report of response time (in milliseconds) of web API, is presented in Table 2. For each request class a sample of 100 parallel load is used for generating the summary report.

Table 2: Summary report of response time (in milliseconds)

Label

Samples

Average

Min

Max

Std. dev.

Throughput

Request A

100

13022

1578

25376

7690.73

1.5 /sec

Request B

100

12997

4119

25049

6675.90

1.2 /sec

Request C

100

11907

4169

24760

8075.66

59.2 /min

Request D

100

5944

4332

24644

3743.19

56.9 /min

Request E

100

5303

3869

7522

842.61

2.9 /sec

3.3. Snapshots of mobile and web application

The various snapshots for the mobile application are presented in Figure 11. For More clarity of the working of the proposed application.

Figure 11: Snapshots of application

The web portal which is used at hospitals, is shown in the Figure 12.

Figure 12: Snapshots of web portal

4. Discussion

(Liu et al., 2020) implemented a 2D convolutional neural network (CNN) fed with multi-biosignals. These multi bio-signals combined EEG, electromyography (ECG) and respiratory signals. The CNN achieved an accuracy of 65% for five classes. (Mao et al., 2020) combined the continuous wavelet transform (CWT) and CNN to classify epileptic seizures. The experiment used the wavelet transform for the conversion of EEG data into time-frequency domain images. These images were fed into a 2D CNN consisting of three convolution, activation, and pooling layers. The 2D CNN achieved an accuracy of 72.49%. (Abbasi et al., 2019) proposed Long Short-Term Memory (LSTM) based classifier. In the preprocessing, Hurst Exponent and Autoregressive Moving Average (ARMA) features are extracted from each signal. Double layered LSTM then uses the extracted feature for classification. For classification into signals of three kinds it achieved an accuracy of 95%. For binary classification into inter-ictal and ictal, the accuracy increased to 98%. EpilNet achieved superior performance compared to other studies in literature, as shown in Table 3. EpilNet model has the following advantages:

• Preserves the true textual nature of raw EEG data.

• Overcomes the problem of vanishing gradient.

• Achieves a testing accuracy of 79.13% for five classes, highest when compared to present works.

• EpilNet also performs better for classification into three classes achieving accuracy of 94.55%.

• Can be easily brought into practical use.

(Cruz et al., 2018) developed a standalone mobile application. The application predicted the ictal state (When a patient has seizure) using a wearable glove. The glove used accelerometry and electromyography (ECG) as measurement signals. The application used the SVM algorithm and raised an SMS alert only. (Ranganathan et al., 2015) proposed a seizure diary for patients to record seizure activity manually. (Marzuki et al., 2016) developed an application, ‘MyEpilPal’. It is a self-management and monitoring tool that can support the epilepsy patient and the caregiver. The application allows patient to add details about seizures manually. Also, application helps in manually storing the dosage of medicine. This enables to monitor the side effects and effectiveness of antiepileptic medicine. The proposed integrated system consisting of Web API, Android application, and web portal has following advantages:

• Automated Internet of Things (IoT) enabled platform. It predicts on-site seizure time, raises an alarm alert, SMS alert to caretakers with location and also stores seizure details on cloud database for later effective treatment by doctors at hospital using web portal.

• Android application has better resource utilization, requires less computational power and battery.

• Easily switches between network based and GPS based location, for better availability of location service.

• Web portal also helps in faster diagnose of new patients into five classes of medical significance at hospitals.

• Web API has average response time of less than 25 seconds.

• Easy operability and better usability.

Table 3: Comparative analysis of EpilNet with baseline approaches

Author

Technique

Classification Type

Accuracy (%)

Lie et al.

2D-CNN

Five Classes

65%

Mao et al.

CWT + CNN

Five Classes

72.49%

EpilNet (Our)

1D-CNN

Five Classes

79.13%

Abbasi et al.

ARMA+LSTM

Three Classes

95%

EpilNet (Our)

1D-CNN

Three Classes

94.55%

5. Conclusion and Future Work

In the present study, EpilNet model is proposed. It overcomes the problem of vanishing gradient. Basic blocks of the model is fed with additional skip connection to reduce the vanishing gradient along with retaining the true textual nature of EEG signals. EpilNet gives the testing accuracy of 79.13% for five classes, leading to a significant increase of about nearly 6-7% compared to related works. EpilNet gives 94.55% for classification between healthy, pre-ictal and ictal. Further, the developed web API helps in bringing EpilNet into practical use. API has an average response time of less than 25 seconds for all the five classes. The integrated system proposed predicts the on-site time for seizure quickly. This helps patient be safe. Also, a developed system helps doctors better and faster analyze patients at hospitals, thus increasing the efficiency of the treatment process. The developed application has lesser resource utilization and is also more reliable, usable, and easy to operate. The limitation of the system is that response time of web API can be further reduced. It can be achieved by further optimizing the concurrency and parallelism level.

Disclosure statement

No potential conflict of interest was reported by the authors.

References

Abbasi, M. U., Rashad, A., Basalamah, A., and Tariq, M. «Detection of Epilepsy Seizures in Neo-Natal EEG Using LSTM Architecture», IEEE Access, 7, pp 179074-179085, 2019.

Ahmed, A., Ahmad, W., Khan, M. J., Siddiqui, S. A. and Cheema, H. M. «A wearable sensor based multi-criteria-decision-system for real-time seizure detection», In 39th Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC), July 2017, pp. 2377-2380.

Andrzejak, R. G., Lehnertz, K., Mormann, F., Rieke, C., David, P. and Elger, C. E. «Indications of nonlinear deterministic and finite-dimensional structures in time series of brain electrical activity: Dependence on recording region and brain state», Physical Review E, 64(6), pp 061907, 2001.

Cruz, N. E., Solarte, J. and Gonzalez-Vargas, A. «Automated epileptic seizure detection system based on a wearable prototype and cloud computing to assist people with epilepsy», In Workshop on Engineering Applications, October 2018, pp. 204-213.

Džaferović, E., Vrtagić, S., Bandić, L., Kevric, J., Subasi, A. and Qaisar, S. M. «Cloud-based mobile platform for EEG signal analysis», In 5th International Conference on Electronic Devices, Systems and Applications (ICEDSA), December 2016, pp. 1-4.

Kolb, R., Pineda, K., Curran, M., Skinner, T., Adegbege, A. and Busha, B. F. «Ambulatory Epileptic Monitoring Device», In 40th Annual Northeast Bioengineering Conference (NEBEC), April 2014, pp. 1-2.

Liu, Y., Sivathamboo, S., Goodin, P., Bonnington, P., Kwan, P., Kuhlmann, L. and Ge, Z. «Epileptic Seizure Detection Using Convolutional Neural Network: A Multi-Biosignal study», In Proceedings of the Australasian Computer Science Week Multiconference, February 2020, pp. 1-8.

Mao, W. L., Fathurrahman, H.I.K.,Lee, Y. and Chang, T. W. «EEG dataset classification using CNN method», In Journal of Physics: Conference Series, Vol. 1456, No. 1, January 2020, pp. 012017.

Marzuki, N. A., Husain, W. and Shahiri, A. M. «MyEpiPal: Mobile Application for Managing, Monitoring and Predicting Epilepsy Patient», In International Conference on Advances in Information and Communication Technology, 2016 December, pp. 383-392.

Menshawy, M. E., Benharref, A. and Serhani, M. «An automatic mobile-health based approach for EEG epileptic seizures detection», Expert systems with applications, 42(20), pp 7157-7174, 2015.

Myers, M. H., Threatt, M., Solies, K. M., McFerrin, B. M., Hopf, L. B., Birdwell, J. D. and Sillay, K. A. «Ambulatory seizure monitoring: From concept to prototype device», Annals of neurosciences, 23(2), pp 100-111, 2016.

Pinho, F., Cerqueira, J., Correia, J., Sousa, N. and Dias, N. «myBrain: a novel EEG embedded system for epilepsy monitoring», Journal of medical engineering & technology, 41(7), pp 564-585, 2017.

Ranganathan, L. N., Chinnadurai, S. A., Samivel, B., Kesavamurthy, B. and Mehndiratta, M. M. «Application of mobile phones in epilepsy care», International Journal of Epilepsy, 2(01), 028-037, 2015.

Sogamoso, K. V. A. and Parra, O. J. S. «Internet of Things for Epilepsy Detection in Patients», In International Conference on Cooperative Design, Visualization and Engineering, October 2018, pp. 237-244.

Sujatha, K. «Automatic epilepsy detection using hybrid decomposition with multi class support vector method», Multimedia Tools and Applications, 1-20, 2019.

Usman, S. M., Khalid, S. and Aslam, M. H. «Epileptic Seizures Prediction Using Deep Learning Techniques», IEEE Access, Vol 8, pp 39998-40007, 2020.

_______________________________

1 Code for ML model training, analysis, android application, apk file, and web API are available publicly at https://github.com/shivi98g/EpilNet-EpilepsyPredictor